home *** CD-ROM | disk | FTP | other *** search
/ Disc to the Future 2 / Disc to the Future Part II Programmer's Reference (Wayzata Technology)(6013)(1992).bin / PC / MISCBAS / BIOFF.ASC < prev    next >
Text File  |  1987-01-11  |  4KB  |  119 lines

  1.  
  2. 10 'COPYRIGHT [C] 1977 BY W.A.BURTON. ALL RIGHTS RESERVED
  3. 20 DIM A(12), M$(12)
  4. 30 DATA 1,31,59,90,120,151,181,212,243,273,304,334
  5. 40 FOR I=1 TO 12: READ A(I): NEXT
  6. 50 PI=3.14159:P1=1:P2=0:QP=0
  7. 60 INPUT" INSTRUCTIONS (Y OR N)";Z$
  8. 70 IF Z$="Y"THEN GOSUB 660
  9. 80 INPUT"FOR HOW MANY DAYS DO YOU WANT THIS CHART";DL
  10. 90 INPUT"STARTING DATE OF YOUR ANALYSIS   ";M,D,Y
  11. 100 INPUT"WHAT IS THE DAY OF YOUR BIRTH  ";MB,DB,YB
  12. 110 INPUT"WHAT IS YOUR NAME  "; A$
  13. 120 DEF FNI(X)=INT(25*SIN(2*PI*X/33)+.5)
  14. 130 DEF FNE(X)=INT(25*SIN(2*PI*X/28)+.5)
  15. 140 DEF FNP(X)=INT(25*SIN(2*PI*X/23)+.5)
  16. 150 T=INT(D+365.25*Y+A(M)+.01*M-.03)
  17. 160 TB=INT(DB+365.25*YB+A(MB)+.01*MB-.03)
  18. 170 X=T-TB
  19. 180 RB=TB-1-INT((TB-1)/7)*7
  20. 190 DATA MON,TUE,WED,THU,FRI,SAT,SUN
  21. 200 FOR I=0 TO 6:READ D$(I):NEXT
  22. 210 DATA JAN,FEB,MAR,APR,MAY,JUN,JUL,AUG,SEP,OCT,NOV,DEC
  23. 220 FOR I=1 TO 12:READ M$(I):NEXT
  24. 230 GOSUB 1090
  25. 240 R=T-1-INT((T-1)/7)*7
  26. 250 LE=21+LEN(DAY$(R))+LEN(M$(M))+LEN(STR$(D))+LEN(RIGHT$(STR$(V),2))
  27. 260 PRINT "STARTING DATE:  ";D$(R)", ";M$(M)STR$(D);", 19";
  28. 270 PRINT RIGHT$(STR$(Y),2),
  29. 280 PRINT "BIRTH DATE:  "D$(RB)", "M$(MB)STR$(DB)", 19";
  30. 290 PRINT RIGHT$(STR$(YB),2)
  31. 300 GOSUB 1110
  32. 310 PRINT D$(R)D;M$(M);TAB(10)":";
  33. 320 C$=":"
  34. 330 F(0)=42:F$(0)=C$
  35. 340 F(1)=42+FNI(X):F$(1)="I"
  36. 350 F(2)=42+FNE(X):F$(2)="E"
  37. 360 F(3)=42+FNP(X):F$(3)="P"
  38. 370 FOR I=0 TO 2
  39. 380 FOR J=I+1 TO 3
  40. 390 IF F(I)<F(J)THEN 440
  41. 400 IF F(I)=(J)THEN F(I)=0:F$(I)="":F$(J)="X":GOTO 440
  42. 410 Q=F(I):Q$=F$(I)
  43. 420 F(I)=F(J):F$(I)=F$(J)
  44. 430 F(J)=Q:F$(J)=Q$
  45. 440 NEXT J:NEXT I
  46. 450 FOR I=0 TO 3
  47. 460 IF F(I)=42 AND F$(I)<>":"THEN GOSUB 820
  48. 470 NEXT
  49. 480 FOR I=0 TO 3
  50. 490 PRINTTAB(F(I));F$(I);
  51. 500 NEXT
  52. 510 PRINT:X=X+1
  53. 520 IF P2>52 THEN 880
  54. 530 P2=P2+1
  55. 540 IF Z=DL THEN 640
  56. 550 R=R+1:IF R=7 THEN R=0
  57. 560 D=D+1:IF M=4 OR M=6 OR M=9 OR M=11 THEN L=30:GOTO 600
  58. 570 IF M=2 AND Y/4=INT(Y/4) THEN L=29:GOTO 600
  59. 580 IF M=2 THEN L=28:GOTO 600
  60. 590 L=31
  61. 600 IF D>L THEN D=D-L:M=M+1:GOTO 620
  62. 610 PRINTD$(R);D;TAB(10)":";:Z=Z+1:GOTO 330
  63. 620 IF M=13 THEN M=1:Z=Z+1:GOTO 310
  64. 630 Z=Z+1:GOTO 310
  65. 640 QP=2:GOTO 880
  66. 650 END
  67. 660 PRINT"ENTER DATES AS FOLLOWS: MM,DD,YY - IGNORE LEADING ZEROS"
  68. 670 PRINT"EXAMPLE: ENTER PEARL HARBOR DAY AS - 12,7,41"
  69. 680 PRINT
  70. 690 PRINT"FOR FURTHER INFO TYPE 'GOTO 940', OTHERWISE 'GOTO 80'"
  71. 700 END
  72. 710 PRINT
  73. 720 PRINT"TO DETERMINE WHICH DAYS ARE CRITICAL FOR YOU, EXAMINE THE"
  74. 730 PRINT"THREE CURVES (P,E, AND I); WHENEVER A CURVE CROSSES THE CRITICAL"
  75. 740 PRINT"LINE I.E. GOES FROM 'UP' TO 'DOWN' OR VICE-VERSA, THEN THAT"
  76. 750 PRINT"WILL BE ONE OF YOUR CRITICAL DAYS."
  77. 760 PRINT
  78. 770 PRINT"      I=INTELLECTUAL   33 DAY CYCLE"
  79. 780 PRINT"      E=EMOTIONAL      28 DAY CYCLE"
  80. 790 PRINT"      P=PHYSICAL       23 DAY CYCLE"
  81. 800 PRINT
  82. 810 GOTO 650
  83. 820 FOR WB=0 TO 3
  84. 830 IF F$(WB)=":"THEN F$(WB)=""
  85. 840 NEXT
  86. 850 RETURN
  87. 860 FOR I=1 TO 72:PRINT "-";:NEXT
  88. 870 PRINT:RETURN
  89. 880 P1=P1+1:P2=0
  90. 890 PRINTCHR$(12)
  91. 900 FOR LI=1 TO 100:WL=WL+1:NEXT
  92. 910 GOSUB 1090
  93. 920 GOSUB 1110
  94. 930 IF QP>1 THEN 710 ELSE 540
  95. 940 PRINT"THIS PROGRAM IS PRESENTLY CONFIGURED TO OPERATE WITH 8-1/2 BY"
  96. 950 PRINT"11 INCH PAPER IN A HARDCOPY PRINTER EQUIPPED WITH AUTOMATIC TOP"
  97. 960 PRINT"OF FORM OPTION. TO USE THIS FEATURE PROPERLY, YOU MUST REPLY"
  98. 970 PRINT"TO ALL OF THE INPUT PROMPTS, HOWEVER !! WHEN YOU HAVE TYPED IN"
  99. 980 PRINT"'YOUR NAME' -DO NOT- HIT CARRIAGE RETURN. MANUALLY ADVANCE THE"
  100. 990 PRINT"PAPER IN YOUR PRINTER SO THAT THE PRINTHEAD IS ABOUT 3/4 INCH"
  101. 1000 PRINT"FROM TOP OF PAPER. THEN SET TOP OF FORM IN YOUR PRINTER, THEN"
  102. 1010 PRINT"HIT CARRIAGE RETURN.":PRINT
  103. 1020 PRINT"TO RE-CONFIGURE THIS PROGRAM FOR PRINTERS OR TELETYPES WITH NO"
  104. 1030 PRINT"TOP OF FORM OPTION, OR CRT'S: LINES 520 - 530 WILL HAVE TO BE"
  105. 1040 PRINT"MODIFIED; ALSO THE ROUTINE AT 880 WILL HAVE TO BE CHANGED. IN"
  106. 1050 PRINT"PARTICULAR THE COMMAND 'PRINT CHR$(12)' IN LINE 890 MUST BE"
  107. 1060 PRINT"CHANGED (USUALLY TO 'PRINT' STATEMENTS IN FOR-NEXT LOOP).":PRINT
  108. 1070 PRINT"TO RUN PROGRAM, TYPE 'GOTO 80'.......":PRINT:PRINT
  109. 1080 END
  110. 1090 PRINT "BIORHYTHM ANALYSIS FOR ";A$;:PRINT TAB(60)"PAGE  ";P1
  111. 1100 IF QP>1 THEN 710 ELSE RETURN
  112. 1110 GOSUB 860
  113. 1120 PRINT TAB(20)"DOWN",TAB(38)"CRITICAL",TAB(61)"UP"
  114. 1130 GOSUB 860
  115. 1140 RETURN
  116. P>1 THEN 710 ELSE RETURN
  117. 1110 GOSUB 860
  118. 1120 PRINT TAB(20)"DOWN",TAB(38)"CRITICAL",TAB(61)"UP"
  119. 1130 GOSUB 860